package cn.iocoder.yudao.module.exam.controller.admin.question.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import javax.validation.constraints.*;

@Schema(description = "管理后台 - 试题管理-题目管理新增/修改 Request VO")
@Data
public class QuestionSaveReqVO {

    @Schema(description = "问题ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "23648")
    private Long id;

    @Schema(description = "题库类型ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "25473")
    @NotNull(message = "题库类型ID不能为空")
    private Long examTypeId;

    @Schema(description = "题目名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "李四")
    @NotEmpty(message = "题目名称不能为空")
    private String name;

    @Schema(description = "题目类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
    @NotEmpty(message = "题目类型：select选择题、single单选题、multiple多选题,jude判断题不能为空")
    private String questionType;

    @Schema(description = "题目描述", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "题目描述不能为空")
    private String content;

    @Schema(description = "题目选项", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "题目选项不能为空")
    private String option;

    @Schema(description = "题目答案", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "题目答案不能为空")
    private String answer;

    @Schema(description = "答案解析")
    private String explanation;

    @Schema(description = "难度等级")
    private Integer difficulty;
}